package com.rockxin.cat.base;

import android.text.TextUtils;

import com.orhanobut.logger.Logger;
import com.rockxin.cat.bean.UserBean;
import com.rockxin.cat.utils.SPUtils;

/**
 * <b>类名称：    User             <br/>
 * <b>类描述：                        <br/>
 * <b>创建人：    Lans               <br/>
 * <b>创建时间：  2018/3/6 11:45     <br/>
 * <b>修改人：                        <br/>
 * <b>修改时间：                      <br/>
 * <b>修改备注：                      <br/>
 *
 * @version 1.0.0 <br/>
 */
public class User {
    private static final String TAG = "User";
    /**
     * /**
     * 用户登录状态
     */
    //public boolean ISLOGIN = false;

    private SPUtils spUtils = new SPUtils("userInfo");

    /**
     * 获取当前用户对象实例
     *
     * @return 实例
     */
    public static User getInstance() {
        return UserHolder.INSTANCE;
    }

    private static class UserHolder {
        private static final User INSTANCE = new User();
    }


    /**
     * 存储用户信息
     *
     * @param userBean
     */
    public void saveUserInfo(UserBean userBean) {
        spUtils.saveDeviceData("userInfo", userBean);
    }

    /**
     * 获取用户信息
     *
     * @return
     */
    public UserBean getUserInfo() {
        if (spUtils.contains("userInfo")) {
            return spUtils.getDeviceData("userInfo");
        }
        return null;
    }

    /**
     * 清除用户信息
     */
    public void clearUserInfo() {
        if (spUtils.contains("userInfo")) {
            UserBean userBean = new UserBean();
            saveUserInfo(userBean);
        }
    }

    /**
     * 获取token值
     *
     * @return
     */
    public String getToken() {
        if (User.getInstance().getUserInfo() != null) {
            return User.getInstance().getUserInfo().getToken();
        }
        return null;
    }

    /**
     * 判断登录状态（true:登录;false:未登录）
     *
     * @returnisLogin
     */
    public boolean isLogin() {
        if (TextUtils.isEmpty(User.getInstance().getToken())) {
            return false;
        } else {
            return true;
        }
    }

}